package com.wkq.database.utils;

import android.content.Context;

import com.wkq.database.dao.VoaUserInfo;
import com.wkq.database.dao.VoaUserInfoDao;
import com.wkq.database.dao.VoaWordInfo;
import com.wkq.database.dao.VoaWordInfoDao;

import java.util.List;

/**
 * 作者:吴奎庆
 * <p>
 * 时间:2021/2/20
 * <p>
 * 用途:
 */


public class DbUtil {
    /**
     * 插入用户
     *
     * @param context
     * @param userName
     * @param iconPath
     * @param token
     * @param openid
     */
    public static void insertUser(Context context, String userName, String iconPath, String token, String openid) {
        VoaUserInfoDao voaUserInfoDao = DaoHelper.getInstance(context).getVoaUserInfoDao();
        VoaUserInfo voaUserInfo = new VoaUserInfo();
        voaUserInfo.setUserIconPath(iconPath);
        voaUserInfo.setUserName(userName);
        voaUserInfo.setUserOpenId(openid);
        voaUserInfo.setUserToken(token);
        voaUserInfoDao.insertOrReplace(voaUserInfo);
    }

    public static VoaUserInfo getUserInfo(Context context, String openid) {
        VoaUserInfoDao voaUserInfoDao = DaoHelper.getInstance(context).getVoaUserInfoDao();
        VoaUserInfo voaUserInfo = new VoaUserInfo();
        return voaUserInfoDao.load(openid);
    }

    /**
     * 获取用户
     *
     * @param context
     * @return
     */
    public static VoaUserInfo getUserInfo(Context context) {
        VoaUserInfoDao voaUserInfoDao = DaoHelper.getInstance(context).getVoaUserInfoDao();
        if (voaUserInfoDao.loadAll() == null || voaUserInfoDao.loadAll().size() == 0) return null;
        return voaUserInfoDao.loadAll().get(0);
    }

    /**
     * 插入生词
     *
     * @param context
     * @param world
     */
    public static void insertWorld(Context context, String world,long time) {
        VoaWordInfoDao voaWordInfoDao = DaoHelper.getInstance(context).getVoaWordInfoDao();
        VoaWordInfo voaUserInfo = new VoaWordInfo();
        voaUserInfo.setDesc(world);
        voaUserInfo.setTime(time);
        voaWordInfoDao.insertOrReplace(voaUserInfo);
    }

    /**
     * 获取生词本
     *
     * @param context
     * @return
     */
    public static List<VoaWordInfo> getWorlds(Context context) {
        VoaWordInfoDao voaWordInfoDao = DaoHelper.getInstance(context).getVoaWordInfoDao();
        return voaWordInfoDao.loadAll();
    }

    public static void deleteWord(Context context,String word){
        VoaWordInfoDao voaWordInfoDao = DaoHelper.getInstance(context).getVoaWordInfoDao();
        voaWordInfoDao.deleteByKey(word);
    }


}
